home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / OEMNADD4.IN_ / oemnadd4.inf
INI File  |  1996-07-12  |  23KB  |  583 lines

  1. [Identification]
  2.     OptionType = NetAdapter
  3. [PlatformsSupported]
  4.     EISA
  5.     "Jazz-Internal Bus"
  6. [Options]
  7.     DEC422
  8. [FileConstants]
  9. UtilityInf      = "UTILITY.INF"
  10. subroutineinf   = "SUBROUTN.INF"
  11. SoftwareType    = "driver"
  12. Exit_Code       = 0
  13. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  14. IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
  15. DEC422_COMPRESSID    = 4367120          
  16. DEC422_1BYTE         = 541238032        
  17. DEC422_MASK          = 4043309055       
  18. Manufacturer    = "Microsoft"
  19. ProductMajorVersion     = "4"
  20. ProductMinorVersion     = "0"
  21. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  22. ProductSoftwareName     = "Lance"
  23. ProductSoftwareImagePath = "\SystemRoot\System32\drivers\lance.sys"
  24. NetRuleSoftwareType     = "lanceSys ndisDriver lanceDriver"
  25. NetRuleSoftwareUse      = $(SoftwareType)
  26. NetRuleSoftwareBindForm = """LanceSys"" yes no container"
  27. NetRuleSoftwareClass    = {"lanceDriver basic"}
  28. ProductHardwareName     = "Lance"
  29. NetRuleHardwareType     = "dec422 dec422Adapter"
  30. NetRuleHardwareBindForm = " yes yes container"
  31. NetRuleHardwareClass    = {"dec422Adapter basic"}
  32. ProductOpSupport     = 132 
  33. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  34. ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
  35. [GeneralConstants]
  36. from      = ""
  37. to        = ""
  38. ExitCodeOk     = 0
  39. ExitCodeCancel = 1
  40. ExitCodeFatal  = 2
  41. KeyNull         = ""
  42. MAXIMUM_ALLOWED   = 33554432
  43. RegistryErrorIndex = NO_ERROR
  44. KeyProduct      = ""
  45. KeyParameters   = ""
  46. TRUE            = 1
  47. FALSE           = 0
  48. NoTitle            = 0
  49. ExitState   = "Active"
  50. OldVersionExisted = $(FALSE)
  51. DriverPath      = $(!STF_NTPATH)\drivers
  52. [date]
  53.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  54. [Identify]
  55.     read-syms Identification
  56.     set Status     = STATUS_SUCCESSFUL
  57.     set Identifier = $(OptionType)
  58.     set Media      = #("Source Media Descriptions", 1, 1)
  59.     Return $(Status) $(Identifier) $(Media)
  60. [ReturnOptions]
  61.     set Status        = STATUS_FAILED
  62.     set OptionList     = {}
  63.     set OptionTextList = {}
  64.     set LanguageList = ^(LanguagesSupported, 1)
  65.     Ifcontains(i) $($0) in $(LanguageList)
  66.         ifstr(i) $($1) == ""
  67.            goto returnoptions
  68.         endif
  69.         set PlatformList = ^(PlatformsSupported, 1)
  70.         Ifcontains(i) $($1) in $(PlatformList)
  71.            goto returnoptions
  72.         else
  73.            set Status = STATUS_NOTSUPPORTED
  74.            goto finish_ReturnOptions
  75.         endif
  76.     else
  77.         set Status = STATUS_NOLANGUAGE
  78.         goto finish_ReturnOptions
  79.     endif
  80. returnoptions = +
  81.     set OptionList     = ^(Options, 1)
  82.     set OptionTextList = ^(OptionsText$($0), 1)
  83.     set Status         = STATUS_SUCCESSFUL
  84. finish_ReturnOptions = +
  85.     Return $(Status) $(OptionList) $(OptionTextList)
  86. [InstallOption]
  87.     set Option   = $($1)
  88.     set SrcDir   = $($2)
  89.     set AddCopy  = $($3)
  90.     set DoCopy   = $($4)
  91.     set DoConfig = $($5)
  92.     set LanguageList = ^(LanguagesSupported, 1)
  93.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  94.         Return STATUS_NOLANGUAGE
  95.     endif
  96.     Debug-Output "OEMNADD4.INF: STF_CWDIR is: "$(!STF_CWDIR)
  97.     Debug-Output "OEMNADD4.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  98.     set-subst LF = "\n"
  99.     read-syms GeneralConstants
  100.     read-syms FileConstants
  101.     Shell $(UtilityInf), GetBindingInfo, "DEC"
  102.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  103.         Debug-Output "ShellCode error: cannot get an error string."
  104.         goto ShellCodeError
  105.     endif
  106.     set NetRuleSoftwareBindable = $($R1)
  107.     read-syms DialogConstants$(!STF_LANGUAGE)
  108.     ifstr(i) $(!NTN_Origination) == "NCPA"
  109.         set Continue = $(OK)
  110.     endif
  111.     read-syms FileConstants$(!STF_LANGUAGE)
  112.     detect date
  113.     set-title  $(FunctionTitle)
  114.     set to   = Begin
  115.     set from = Begin
  116.     set CommonStatus = STATUS_SUCCESSFUL
  117.     EndWait
  118. Begin = +
  119.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  120.         set StartLabel = removeadapter
  121.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  122.         set StartLabel = UpgradeSoftware
  123.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  124.         set StartLabel = bindingadapter
  125.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  126.         set CommonStatus = STATUS_REBOOT
  127.         Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  128.             Debug-Output "Cannot configure the dec 422 driver software."
  129.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  130.         else
  131.             Debug-Output "Cannot configure the dec 422 adapter card."
  132.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_HARDWARE
  133.         endif
  134.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  135.             Debug-Output "ShellCode error: cannot get an error string."
  136.             goto ShellCodeError
  137.         endif
  138.         set Error = $($R0)
  139.         set from = end
  140.         set to = end
  141.         goto nonfatalinfo
  142.     else
  143.         set StartLabel = installadapter
  144.         set OEM_ABANDON_OPTIONS = {}
  145.         set OEM_ABANDON_SOFTWARE = FALSE
  146.         set OEM_ABANDON_ON = TRUE
  147.     endif
  148.     set from = $(fatal)
  149.     set to = $(fatal)
  150.     goto $(StartLabel)
  151. installadapter = +
  152.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  153.     Ifstr $(KeyProduct) != $(KeyNull)
  154.         CloseRegKey $(KeyProduct)
  155.         ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
  156.            Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
  157.                $(ProductVersion)
  158.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  159.                Debug-Output "ShellCode error: cannot get an error string."
  160.                goto ShellCodeError
  161.            endif
  162.            goto end
  163.         else
  164.            Shell $(UtilityInf), CardExistedDlg
  165.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  166.                Debug-Output "ShellCode error: cannot get an error string."
  167.                goto ShellCodeError
  168.            endif
  169.            ifstr(i) $($R1) != "OK"
  170.                set CommonStatus = STATUS_USERCANCEL
  171.                goto end
  172.            endif
  173.            set OldVersionExisted = $(TRUE)
  174.         endif
  175.     endif
  176.     goto nextstep
  177. configureadapter = +
  178.     set Error = "Configure: Sorry, not yet implemented."
  179.     goto fatal
  180. nextstep = +
  181.     StartWait
  182. installproduct = +
  183.     Shell $(UtilityInf), EISAFindBus, $(DEC422_1BYTE) $(DEC422_MASK)
  184.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  185.         goto ShellCodeError
  186.     endif
  187.     ifstr $($R0) != "NO_ERROR"
  188.         set Error = $($R0)
  189.         goto fatal
  190.     endif
  191.     ifstr(i) $($R1) == {}
  192.         set Error = $(CANNOT_FIND_ANY_CARD)
  193.         set CommonStatus = STATUS_USERCANCEL
  194.         set from = end
  195.         goto nonfatal
  196.     endif
  197.     set AdapterList = $($R1)
  198.     ifint $(OldVersionExisted) == $(FALSE)
  199.         Ifstr(i) $(DoCopy) == "YES"
  200.            Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  201.            Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  202.                Goto ShellCodeError
  203.            Else-Ifstr(i) $($R0) == STATUS_FAILED
  204.                Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  205.                ifint $($ShellCode) != $(!SHELL_CODE_OK)
  206.                   goto ShellCodeError
  207.                endif
  208.                set Error = $($R0)
  209.                Goto fatal
  210.            Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  211.                Goto successful
  212.            Endif
  213.            Set SrcDir = $($R1)
  214.         Endif
  215.         install "Install-Option"
  216.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  217.            Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  218.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  219.                goto ShellCodeError
  220.            endif
  221.            set Error = $($R0)
  222.            goto fatal
  223.         endif
  224.         Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  225.             $(ProductSoftwareName), +
  226.             $(ProductSoftwareName), +
  227.             $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
  228.             $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
  229.             $(NetEventDLL)
  230.         Set OEM_ABANDON_SOFTWARE = TRUE
  231.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  232.             goto ShellCodeError
  233.         endif
  234.         set RegistryErrorIndex = $($R0)
  235.         Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  236.             EndWait
  237.             CloseRegKey $($R1)
  238.             CloseRegKey $($R2)
  239.             CloseRegKey $($R3)
  240.             CloseRegKey $($R4)
  241.             CloseRegKey $($R5)
  242.             goto fatalregistry
  243.         endif
  244.         Set SoftProductKey      = $($R1)
  245.         Set SoftNetRuleKey      = $($R2)
  246.         Set SoftServiceKey      = $($R3)
  247.         Set SoftParameterKey    = $($R4)
  248.         Set SoftLinkageKey      = $($R5)
  249.         set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  250.                            {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  251.                            {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  252.                            {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
  253.                            {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
  254.                            {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  255.                            {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  256.         Shell  $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  257.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  258.             goto ShellCodeError
  259.         endif
  260.         set RegistryErrorIndex = $($R0)
  261.         Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  262.             EndWait
  263.             CloseRegKey $(SoftProductKey)
  264.             CloseRegKey $(SoftNetRuleKey)
  265.             CloseRegKey $(SoftServiceKey)
  266.             CloseRegKey $(SoftParameterKey)
  267.             CloseRegKey $(SoftLinkageKey)
  268.             goto fatalregistry
  269.         endif
  270.         set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  271.                             {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  272.                             {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  273.                             {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  274.                             {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  275.                             {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  276.         Shell  $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  277.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  278.             goto ShellCodeError
  279.         endif
  280.         set RegistryErrorIndex = $($R0)
  281.         CloseRegKey $(SoftProductKey)
  282.         CloseRegKey $(SoftNetRuleKey)
  283.         CloseRegKey $(SoftServiceKey)
  284.         CloseRegKey $(SoftParameterKey)
  285.         CloseRegKey $(SoftLinkageKey)
  286.         Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  287.             EndWait
  288.             goto fatalregistry
  289.         endif
  290.     endif
  291.     ForListDo $(AdapterList)
  292.         set BusNum = *($($),1)
  293.         set SlotNum = *($($),2)
  294.         Debug-Output $(BusNum)
  295.         Debug-Output $(SlotNum)
  296.         Shell $(UtilityInf), IsNetCardAlreadyInstalled, $(BusNum), +
  297.             $(SlotNum), $(ProductHardwareDescription), $(ProductHardwareName)
  298.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  299.             goto ShellCodeError
  300.         endif
  301.         ifstr $($R0) != "NO_ERROR"
  302.             set Error = $($R0)
  303.             goto fatal
  304.         endif
  305.         ifstr(i) $($R1) != "YES"
  306.                 Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
  307.                 ifint $($R4) != -1
  308.                     Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  309.                 endif
  310.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  311.                     goto ShellCodeError
  312.                 endif
  313.                 set RegistryErrorIndex = $($R0)
  314.                 Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  315.                     EndWait
  316.                     CloseRegKey $($R1)
  317.                     CloseRegKey $($R2)
  318.                     CloseRegKey $($R3)
  319.                     goto fatalregistry
  320.                 endif
  321.                 Set HardNetCardKey      = $($R1)
  322.                 Set HardNetRuleKey      = $($R2)
  323.                 Set HardParameterKey    = $($R3)
  324.                 set AdapterNumber = $($R4)
  325.                 set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  326.                                    {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardwareTitle)},+
  327.                                    {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareDescription)},+
  328.                                    {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
  329.                                    {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
  330.                                    {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)},+
  331.                                    {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  332.                 Shell  $(UtilityInf), AddValueList, $(HardNetCardKey), $(NewValueList)
  333.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  334.                     goto ShellCodeError
  335.                 endif
  336.                 set NewValueList = {{CardType,$(NoTitle),$(!REG_VT_DWORD),5},+
  337.                                    {BusType,$(NoTitle),$(!REG_VT_DWORD),2},+
  338.                                    {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
  339.                                    {EisaCompressedId,$(NoTitle),$(!REG_VT_DWORD),$(DEC422_COMPRESSID)},+
  340.                                    {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
  341.                                    {SlotNumber,$(NoTitle),$(!REG_VT_DWORD),$(SlotNum)}}
  342.                 Shell  $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
  343.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  344.                     goto ShellCodeError
  345.                 endif
  346.                 set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
  347.                 set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
  348.                 set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
  349.                                     {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  350.                                     {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
  351.                                     {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  352.                 Shell  $(UtilityInf), AddValueList, $(HardNetRuleKey), $(NewValueList)
  353.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  354.                     goto ShellCodeError
  355.                 endif
  356.                 CloseRegKey $(HardNetCardKey)
  357.                 CloseRegKey $(HardNetRuleKey)
  358.                 CloseRegKey $(HardParameterKey)
  359.         endif
  360.     EndForListDo
  361.     goto writeparameters
  362. writeparameters = +
  363.     EndWait
  364.     goto successful
  365. bindingadapter =+
  366.     set Error = "Binding: Sorry, not yet implemented."
  367.     goto fatal
  368. removeadapter = +
  369.     Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  370.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  371.             $(ProductSoftwareName)
  372.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  373.             Debug-Output "ShellCode error"
  374.             goto ShellCodeError
  375.         endif
  376.         set RegistryErrorIndex = $($R0)
  377.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  378.             goto fatalregistry
  379.         endif
  380.     else
  381.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  382.             $(ProductSoftwareName), $(!NTN_RegBase)
  383.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  384.             Debug-Output "ShellCode error"
  385.             goto ShellCodeError
  386.         endif
  387.         set RegistryErrorIndex = $($R0)
  388.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  389.             goto fatalregistry
  390.         endif
  391.     endif
  392.     goto end
  393. UpgradeSoftware = +
  394.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  395.     Ifstr $(KeyProduct) != $(KeyNull)
  396.         install "Install-Update"
  397.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  398.             goto fatal
  399.         endif
  400.         SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  401.         SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  402.         CloseRegKey $(KeyProduct)
  403.     else
  404.         goto fatalregistry
  405.     endif
  406.     set iSearch = 1
  407. nextnetcard = +
  408.     Shell $(UtilityInf), FindNextNetworkCard, $(ProductHardwareName), $(iSearch)
  409.     set KeyNetcard = $($R0)
  410.     set iSearch = $($R1)
  411.     Debug-Output "OemNadEp.Inf: FindNextNetworkCard "$(KeyNetcard)","$(iSearch)
  412.     Ifstr $(KeyNetcard) != $(KeyNull)
  413.         Debug-Output "OemNadEp.Inf: Setting OperationsSupport value"
  414.         SetRegValue $(KeyNetcard) {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)}
  415.         CloseRegKey $(KeyNetcard)
  416.         goto nextnetcard
  417.     Endif
  418.     goto end
  419. successful = +
  420.     goto end
  421. abandon = +
  422.     ForListDo $(OEM_ABANDON_OPTIONS)
  423.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  424.             $(ProductSoftwareName), $($)
  425.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  426.             Debug-Output "ShellCode error"
  427.             goto ShellCodeError
  428.         endif
  429.         set RegistryErrorIndex = $($R0)
  430.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  431.             goto fatalregistry
  432.         endif
  433.     EndForListDo
  434.     Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  435.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  436.             $(ProductSoftwareName), FALSE
  437.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  438.             Debug-Output "ShellCode error"
  439.             goto ShellCodeError
  440.         endif
  441.         set RegistryErrorIndex = $($R0)
  442.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  443.             goto fatalregistry
  444.         endif
  445.     endif
  446.     goto end
  447. warning = +
  448.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  449.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  450.         goto ShellCodeError
  451.     endif
  452.     ifstr(i) $($R1) == "OK"
  453.         goto $(to)
  454.     else-ifstr(i) $($R1) == "CANCEL"
  455.         goto $(from)
  456.     else
  457.         goto "end"
  458.     endif
  459. nonfatalinfo = +
  460.     Set CommonStatus = STATUS_USERCANCEL
  461.     Set Severity = STATUS
  462.     goto nonfatalmsg
  463. nonfatal = +
  464.     Set Severity = NONFATAL
  465.     goto nonfatalmsg
  466. nonfatalmsg = +
  467.     ifstr(i) $(Error) == ""
  468.         Set Severity = NONFATAL
  469.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  470.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  471.             goto ShellCodeError
  472.         endif
  473.         set Error = $($R0)
  474.     endif
  475.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  476.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  477.         goto ShellCodeError
  478.     endif
  479.     ifstr(i) $($R1) == "OK"
  480.         goto $(from)
  481.     else
  482.         goto "end"
  483.     endif
  484. fatalregistry = +
  485.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  486.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  487.         goto ShellCodeError
  488.     endif
  489.     set Error = $($R0)
  490.     goto fatal
  491. fatal = +
  492.     ifstr(i) $(Error) == ""
  493.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  494.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  495.             goto ShellCodeError
  496.         endif
  497.         set Error = $($R0)
  498.     endif
  499.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  500.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  501.         goto ShellCodeError
  502.     endif
  503.     goto setfailed
  504. ShellCodeError = +
  505.     set DlgType      = "MessageBox"
  506.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  507.     set STF_MB_TEXT  = $(ShellCodeErrorText)
  508.     set STF_MB_TYPE  = 1
  509.     set STF_MB_ICON  = 3
  510.     set STF_MB_DEF   = 1
  511.     ui start "Error Message"
  512.     goto setfailed
  513. setfailed = +
  514.     set CommonStatus = STATUS_FAILED
  515.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  516.         set OEM_ABANDON_ON = FALSE
  517.         goto abandon
  518.     endif
  519.     goto end
  520. end = +
  521.     goto term
  522. term = +
  523.     Return $(CommonStatus)
  524. [Install-Option]
  525.     set STF_VITAL = ""
  526.     ifstr(i) $(AddCopy) == "YES"
  527.         AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  528.     endif
  529.     ifstr(i) $(DoCopy) == "YES"
  530.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  531.        CopyFilesInCopyList
  532.     endif
  533.     ifstr(i) $(DoConfig) == "YES"
  534.     endif
  535.     Exit
  536. [Install-Update]
  537.    set STF_VITAL        = ""
  538.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  539.    AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  540.    exit
  541. [Source Media Descriptions]
  542.     1 = "Windows NT Server CD-ROM", TAGFILE = cdrom_s.40
  543. [Signature]
  544.     FileType = MICROSOFT_FILE
  545. [GetSignature]
  546.     read-syms Signature
  547.     return $(FileType)
  548. [ProductType]
  549. STF_PRODUCT  = LanmanNT
  550. STF_PLATFORM = I386
  551. [Files-Inf]
  552. 2,    oemsetup.inf,     SIZE=1000,    RENAME=$(!UG_Filename)
  553. [Files-DEC422]
  554. 1,LANCE.SYS , SIZE=999
  555. [LanguagesSupported]
  556.     ENG
  557. [OptionsTextENG]
  558.     DEC422     = "DEC EtherWORKS Turbo EISA Adapter"
  559. [FileConstantsENG]
  560. ProCaption   = "Windows NT Setup"
  561. ProCancel    = "Cancel"
  562. ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  563.                "Are you sure you want to cancel copying files?"
  564. ProCancelCap = "Network Setup Message"
  565. ProText1     = "Copying:"
  566. ProText2     = "To:"
  567. FunctionTitle   = "DEC EtherWORKS Turbo EISA Adapter Card Setup"
  568. ProductSoftwareDescription      = "DEC Lance Adapter Driver"
  569. ProductHardwareDescription      = "DEC EtherWORKS Turbo EISA Adapter"
  570. CANNOT_FIND_ANY_CARD            = "Network card is not present in the system"
  571. ProductSoftwareTitle    = "DEC Lance Adapter Driver"
  572. ProductHardwareTitle    = "DEC EtherWORKS Turbo EISA Adapter"
  573. ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
  574. ShellCodeErrorText      = "Shell Code Error."
  575. [DialogConstantsENG]
  576. Help        = "&Help"
  577. Exit        = "Cancel"
  578. OK          = "OK"
  579. HelpContext = ""
  580. Continue    = "Continue"
  581. Cancel      = "Cancel"
  582. [FileDependentDlgENG]
  583.